package net.towee.client.com.repo.view;

import com.google.gwt.event.dom.client.HasClickHandlers;
import com.google.gwt.event.shared.HandlerRegistration;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.FlowPanel;
import com.google.gwt.user.client.ui.Widget;
import com.google.inject.Inject;

import net.towee.client.com.repo.presenter.DiscussionShowerPresenter.Display;
import net.towee.client.event.MessageOperationEvent;
import net.towee.client.event.MessageOperationEvent.HasMessageOperationHandlers;
import net.towee.client.event.MessageOperationEvent.MessageOperationHandler;
import net.towee.client.i18n.ToweeConstants;
import net.towee.client.resources.ClientResource;
import net.towee.model.discussion.Message;

public class DiscussionShowerView extends FlowPanel implements Display, HasMessageOperationHandlers {
	private final ToweeConstants constants;
	private final ClientResource resource;

	@Inject
	public DiscussionShowerView(ToweeConstants constants, ClientResource resource){
		this.constants = constants;
		this.resource = resource;
	}

	@Override
	public void showMessage(Message mess, boolean newMesage, boolean canEdit, boolean canRemove) {
		// TODO Auto-generated method stub

	}

	@Override
	public void removeMessage(String messageId) {
		// TODO Auto-generated method stub

	}

	@Override
	public String getMessageText() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public HasClickHandlers getMoreButton() {
		return new Button();
	}

	@Override
	public void onMessagePubleshed() {
		// TODO Auto-generated method stub

	}

	@Override
	public void onMessageChanged() {
		// TODO Auto-generated method stub

	}

	@Override
	public void onMessageRemoved() {
		// TODO Auto-generated method stub

	}

	@Override
	public void onMessagesLoaded() {
		// TODO Auto-generated method stub

	}

	@Override
	public void onMessagesLoading() {
		// TODO Auto-generated method stub

	}

	@Override
	public void noMore() {
		// TODO Auto-generated method stub

	}

	@Override
	public HandlerRegistration addMessageOperationHandler(MessageOperationHandler handler) {
		return addHandler(handler, MessageOperationEvent.getType());
	}
	
	@Override
	public HasMessageOperationHandlers getMessageHandlers() {
		return this;
	}

}
